The present invention relates to a motion data generation apparatus, a motion data generation method, and a motion data generation program storage medium, which are used in a field of computer graphics animation, and, more particularly, to an apparatus and a method for automatically generating closed-loop periodic motion data from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
Definitions will be described before discussing a main subject. In the computer graphics animation, as shown in FIG. 6(a), a skeletal structure equivalent to the bones of a multi-joint rigid body object is defined to move a human and a creature modeled by the multi-joint rigid body object realistically, and the motion of a human is decided by the motion of the skeletal structure.
In FIG. 6(a), ES denotes an end site corresponding to that of a human; JT, a joint corresponding to that of a human; LK, a link corresponding to a bone of a human; ST, a segment corresponding to a higher hierarchical part constituting a human, such as a neck, arm, or leg.
Motion data of the skeletal structure is time-series data. A concept of motion data of an object, such as a human and a creature modeled by a multi-joint rigid body object, in the computer graphics animation will be described with reference to FIG. 6(b). In the figure, a model of multi-joint rigid body object is a human. As described above, the motion data is generally time-series data. The motion data comprises three posture angles Aa, Av, and Ah used for controlling the posture of the whole object, a slide vector indicating the amount of parallel translation used for controlling the movement of each joint, and a joint angle Aj indicating the amount of rotation.
To indicate the position of a whole object O, a point P is predetermined and fixed inside each object. To indicate the posture of the whole object O, a movement direction vector Va, an upward direction vector Vv, and a lateral direction vector Vh are defined, and called posture vectors.
With a coordinate system introduced by the fixed point P and the posture vectors Va, Vv, and Vh, the position of each joint of the object can be inherently determined. As opposed to this, in the computer graphics, each object has its own coordinate system, called an object coordinate system, for defining its shape. Hence, the origin of the object coordinate system is the point P indicating the position of the whole object O. Unit vectors defining the object coordinate system are the posture vectors.
The posture angles Aa, Av, and Ah are the amounts of rotation about the three axes of a world coordinate system (x, y, z). To calculate the posture vectors Va, Vv, and Vh at a certain time, the posture vectors in the initial state are rotationally converted about X, Y, and Z axes by the respective amounts of rotation. The posture of the whole object is thus controlled at each time. The movement of a joint is controlled by parallel translation by a slide vector, and rotation about each axis, in a local coordinate system defined for each joint. Although the foregoing discussion is based on a multi-joint rigid body object, this invention is not restricted to a rigid body or a multi-joint object. Other kinds of body or a single joint, or the combination of those can be employed in this invention.
The motion data comprises three posture angles used for controlling the posture of the whole object, a slide vector indicating the amount of parallel translation used for controlling the movement of each joint, and a joint angle indicating the amount of rotation.
To indicate the position of a whole object, a point is predetermined and fixed inside each object. To indicate the posture of the whole object, a movement direction vector, an upward direction vector, and a lateral direction vector are defined, and called posture vectors. This situation is shown in FIG. 6(b). With a coordinate system introduced by the fixed point and the posture vectors, the position of each joint of the object can be inherently determined.
As opposed to this, in the computer graphics, each object has its own coordinate system, called an object coordinate system, for defining its shape. Hence, the origin of the object coordinate system is the point indicating the position of the whole object. Unit vectors defining the object coordinate system are the posture vectors. The posture angles are the amounts of rotation about the three axes of a world coordinate system. To calculate the posture vectors at a certain time, the posture vectors in the initial state are rotationally converted about the three axes by the respective amounts of rotation. The posture of the whole object is thus controlled at each time. The movement of a joint is controlled by parallel translation by a slide vector, and rotation about each axis, in a local coordinate system defined for each joint.
As shown in FIG. 7(b), the time-series motion data of the position of an object at an initial time does not match that at a last time. The local movements of the object are different at all between at the initial time and at the last time. This motion is called an open non-periodic motion. That is, when the same open non-periodic motion is continually repeated, the state at the last time transfers abruptly to the state at the initial time, while the object suddenly jumps from the position at the last time to that at the initial time. Therefore, the motion cannot be repeated.
An open periodic motion is a motion, as shown in FIG. 7(b), in which the position of the object at the initial time does not match that at the last time, but the states of an object at the last time and at the initial time are almost the same, so the object transfers from the state at the last time to that at the initial time, naturally and smoothly. When the same open periodic motion is continually repeated, the transition of the state of the object is always natural and smooth, but as to the position of the object, the object suddenly jumps from the position at the last time to that at the initial time. Therefore, the motion cannot be repeated, either.
As opposed to those, a closed-loop periodic motion is a motion, as shown in FIG. 7(c), in which as to both the state and the position of an object, there is no abrupt transition, or no sudden jump to anywhere not expected. Therefore, the motion can be repeated.
Time-series motion data as a result of connection of plural time-series motion data becomes an open non-periodic motion unless the data is subjected to a special processing described below in this invention.
By the way, recently, in the field of computer graphics animation, always required is realistic motions of a creature, such as a human, modeled by a multi-joint rigid body object.
Three-dimensional time-series data representing such motions are generated by an animator using a method including key-framing interpolation, or a motion capture technique which is a 3-D motion measuring technique capturing real movements.
It takes a long time to process motions generated by such methods, and the motions are generated basically as open time-series data which is a unit having a minimum meaning as a movement, taking into account that the generated movement is reused. Hence, those small pieces of motion must be connected to get a series of motion over a long time. However, the motion data resulting from connection of open time-series motion data becomes inevitably open time-series motion data.
There are several conventional methods of connecting motion data. The most primitive one of those methods is a method such that an expert called the foregoing animator estimates a motion connecting between motions, and producing the motion data of the connecting motion by handiwork. However, the method has poor productivity, and because the work of estimating a motion in three-dimensional space depends on the experience of an animator, the connecting motion produced is often unnatural. When a closed-loop motion is produced, unnaturalness also exists.
In this situation, there has been proposed a first prior art method aiming to automate the connection of motions in a case where the local movement of an object or body is periodic, that is, Munetoshi Unuma, et al., Fourier Principles for Emotion-based Human Figure Animationxe2x80x9d, SIGGRAPH95 Proceeding, pp 91-96, 1995.
In this prior art method, the time-series data of front and back motions to be connected to each other are Fourier-expanded, the motion in the connecting interval is extrapolated in the frequency space, and the result is inversely Fourier-expanded to produce a motion in the connecting interval. In other words, by exploiting the periodicity, prediction is performed to produce the data connecting motions. However, it is not possible to produce a closed-loop periodic motion as the motion of a whole object.
A second prior art method is disclosed, Charles Rose, et al., Efficient Generation of Motion Transitions using Spacetime Constraintsxe2x80x9d, SIGGRAPH 96 proceeding, pp 147-154. 1996, which is a motion connecting method in the condition that the periodicity of a local motion of an object or a body is not necessarily required.
In the second prior art method, the motion in the connecting interval is generated by estimating based on the time-series data of front and back motions connecting to each other, exploiting inverse kinematics, inverse dynamics, and optimizing calculation. However, this method simply connects motions, so it is not possible to generate a closed-loop periodic motion.
As described above, the first conventional method is applied only to a motion having originally periodicity. Besides, it is not possible to generate a closed-loop periodic motion as the whole motion of an object or body. It also takes a long time to perform Fourier expansion and inverse Fourier expansion.
Further, the second conventional method, as to motion connection, generates a connecting motion by extrapolating from front and back motions. Since the method includes various kinds of numerical calculation, it takes a long time to get the connecting motion. Connecting motions by predicting from front and back motions is an ill-posed problem. Therefore, only if the estimate function of optimizing calculation matches the conditions of the connection at the time, an appropriate motion is generated. Such a connecting condition depends on each case of front and back motions or a connecting situation separately. Hence, there is no condition satisfied in a general situation, so the motion becomes unnatural.
Incidentally, the second conventional method takes into consideration only torque consumption as an estimate function, and minimizes this. The minimization of the torque consumption is only a necessary condition, but not a sufficient condition. Thus, the method cannot handle all situations. For example, the method does not handle a case where a smooth or high-speed motion is required.
That is, although it takes a long processing time for the second conventional method, the connecting motion often becomes unnatural. The generated motion as a result of the connection becomes an open non-periodic motion, when the starting motions are open.
As described above, in the first and second prior art methods, a connecting motion is generated by estimating based on front and back motions. If the estimation is not true, the connecting motion is inappropriate. What is more, a closed-loop periodic motion cannot be generated.
However, a closed-loop periodic motion plays a very important role in the production of computer graphics animation. For example, when motions of dancing or extras are generated, if all of a series of motions are to be produced, the amount of motion data becomes huge, so the production is very hard. Especially for the realization of real-time animation, this problem is so fatal that the production is actually implausible.
It is an object of the present invention to provide an apparatus for automatically generating a closed-loop periodic motion data based on time-series motion data generated by connecting single or plural open time-series motion data of moving a multi-joint rigid body object
Other objects and advantages of the present invention will become apparent from the detailed description described below; it should be understood, however, that the detailed description and specific embodiment are described by way of illustration only, since various changes and modifications within the scope of the invention will become apparent to those skilled in the art from this detailed description.
According to a first aspect of this invention, there is provided an apparatus of generating motion data, comprising:
a storage unit for storing plural time-series motion data; and
a motion connecting unit for reading out plural time-series motion data from said storage unit, connecting the plural time-series motion data to generate a series of time-series motion data, and storing the series of time-series motion data in said storage unit.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect plural time-series motion data and generate new time-series motion data.
According to a second aspect of this invention, there is provided an apparatus of generating motion data, comprising:
a storage unit for storing two time-series motion data to be connected, the two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively; and
a motion connecting unit for estimating motion data in future or past as much as a connection time, in terms of time, for either the front time-series motion data or the back time-series motion data, to generate estimated-extended motion data, and synthesizing connecting motion data based on the estimated-extended motion data and motion data in future or past as much as the connection time, in terms of time, for either the front time-series motion data or the back time-series motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a third aspect of this invention, there is provided the apparatus of the second aspect wherein said motion connecting unit, two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively, estimates motion data as much as a connection time from the last time of the front time-series motion data to generate estimated-extended motion data, and generates connecting motion data based on the back time-series motion data from the initial time to the connection time after and the estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a fourth aspect of this invention, there is provided the apparatus of the second aspect wherein said motion connecting unit, two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively, estimates motion data as much as a connection time in the past direction from the initial time of the back time-series motion data, in terms of time, to generate estimated-extended motion data, and generates connecting motion data based on the front time-series motion data from the last time to the connection time before and the estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a fifth aspect of this invention, there is provided the apparatus of the second aspect wherein said motion connecting unit, according to a connection time distribution rate xcex3, (a) estimates motion data as much as xcex3xc3x97(a connection time) from the last time of the front time-series motion data to generate estimated backward-extended motion data, (b) estimates motion data in the past direction as much as (1xe2x88x92xcex3)xc3x97(the connection time) from the initial time of the back time-series motion data, in terms of time, to generate estimated forward-extended motion data, (c) generates a first half of connecting motion data based on the front time-series motion data from the last time to (1xe2x88x92xcex3)xc3x97(the connection time) before and the estimated forward-extended motion data, and (d) generates a second half of connecting motion data based on the back time-series motion data from the initial time to xcex3xc3x97(the connection time) after and the estimated backward-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a sixth aspect of this invention, there is provided the apparatus of any of the third, fourth, and fifth aspects wherein said open periodic motion generating unit uses a function that (a) is 0 at the initial time of the connection time, and 1 at the last time of the connection time, (b) increases monotonically, (c) is differentiable, and (d) is rotationally symmetrical by 180 degrees about the middle time of the connection time, within the connection time.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a seventh aspect of this invention, there is provided the apparatus of any of the third, fourth, and fifth aspects wherein said open periodic motion generating unit uses a function that (a) is 1 at the initial time of the connection time, and 0 at the last time of the connection time, (b) decreases monotonically, (c) is differentiable, and (d) is rotationally symmetrical by 180 degrees about the middle time of the connection time, within the connection time.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to an eighth aspect of this invention, there is provided the apparatus of the third aspect wherein said motion connecting unit estimates that the front time-series motion data at the last time continues as much as a connection time from the last time, and generates estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a ninth aspect of this invention, there is provided the apparatus of the fourth aspect wherein said motion connecting unit estimates that the back time-series motion data at the initial time has continued as much as a connection time in the past direction from the initial time, in terms of time, and generates estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a tenth aspect of this invention, there is provided the apparatus of the third aspect wherein said motion connecting unit estimates that motion data smoothly shifts to the front time-series motion data at the last time a connection time after the last time, and generates estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to an eleventh aspect of this invention, there is provided the apparatus of the fourth aspect wherein said motion connecting unit estimates that the motion state of the back time-series motion data a connection time before the initial time of the back time-series motion data smoothly shifts to the back time-series motion data with the motion state of the back time-series motion data at the initial time, and generates estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a twelfth aspect of this invention, there is provided the apparatus of the third aspect wherein said motion connecting unit estimates that the motion state of the front time-series motion data a connection time after the last time of the front time-series motion data is the motion state of the back times-series motion data the connection time after the initial time of the back time-series motion data, and generates estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirteenth aspect of this invention, there is provided the apparatus of the fourth aspect wherein said motion connecting unit estimates that the motion state of the back time-series motion data a connection time before the initial time of the back time-series motion data smoothly shifts to the motion state of the front time-series motion data the connection time before the last time of the front time-series motion data, and generates estimated-extended motion data.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a fourteenth aspect of this invention, there is provided the apparatus of the fifth aspect wherein said motion connecting unit calculates a connection time distribution rate in connection, for time-series motion data holding a connection time distribution rate as additional information, based on a connection time distribution rate as additional information for the front time-series motion data and a connection time distribution rate as additional information for the back time-series motion data, and generates an estimated forward-extended motion and an estimated backward-extended motion according to the connection time distribution rate.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a fifteenth aspect of this invention, there is provided the apparatus of the fifth aspect wherein said motion connecting unit calculates a connection time distribution rate xcex3 in connection, for time-series motion data holding a connection time distribution rate as additional information, based on a connection time distribution rate xcex31 as additional information for the front time-series motion data and a connection time distribution rate xcex32 as additional information for the back time-series motion data, by xcex3=(xcex31+xcex32)/2, and generates an estimated forward-extended motion and an estimated backward-extended motion according to the connection time distribution rate.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data, and able to vary the connection time distribution rate xcex3.
According to a sixteenth aspect of this invention, there is provided the apparatus of any of the third, fourth, and fifth aspects wherein for time-series motion data holding additional information about numerically expressed methods of generating estimated-extended motions, said motion connecting unit generates an estimated-extended motion, an estimated backward-extended motion, and an estimated forward-extended motion, according to the additional information.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a seventeenth aspect of this invention, there is provided the apparatus of the eleventh aspect wherein said motion connecting unit, for time-series motion data holding a value numerically expressing the importance of the time-series motion data as additional information, based on the value of the importance of the additional information for the front time-series motion data and the value of the importance of the additional information for the back time-series motion data, determines a method of generating an estimated backward-extended motion and an estimated forward-extended motion, calculates a connection time distribution rate, and generates an estimated forward-extended motion and an estimated backward-extended motion.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to an eighteenth aspect of this invention, there is provided the apparatus of the fifth aspect wherein said motion connecting unit, for time-series motion data holding a value numerically expressing the importance of the time-series motion data as additional information, based on the value xcex41 of the importance of the additional information for the front time-series motion data and the value xcex42 of the importance of the additional information for the back time-series motion data (0xe2x89xa6xcex41, xcex42xe2x89xa61), determines a method of generating an estimated backward-extended motion and an estimated forward-extended motion, calculates a connection time distribution rate xcex3 by xcex3=(xcex41xe2x88x92xcex42+1)/2, and generates an estimated forward-extended motion and an estimated backward-extended motion.
Therefore, it is possible to provide an apparatus for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data, and able to vary the connection time distribution rate xcex3.
According to a nineteenth aspect of this invention, there is provided an apparatus of generating closed-loop periodic motion data, comprising:
a storage unit;
an input/output unit for (a) receiving time-series motion data including the position data of a whole multi-joint rigid body object at each time, and the posture angle data, joint slide vector data, and joint angle data of the multi-joint rigid body object at each time, (b) storing the received time-series motion data in said storage unit, and (c) reading out closed-loop periodic motion data generated from the time-series motion data, stored in said storage unit;
an open periodic motion generating unit for (a) reading out time-series motion data stored in said storage unit, (b) generating open periodic time-series motion data by making the local parts of a multi-joint rigid body object periodic, and (c) storing the open periodic time-series motion data in said storage unit; and
a closed-loop motion generating unit for (a) reading out the position data of the whole multi-joint rigid body object among the open periodic time-series motion data, (b) generating closed-loop motion data by making the position data of the whole multi-joint rigid body object closed-loop, i.e., the movement of the whole multi-joint rigid body object being made closed-loop, (c) replacing the open periodic time-series motion data stored in said storage unit with the closed-loop motion data, and (d) storing the closed-loop motion data in said storage unit.
Therefore, it is possible to provide an apparatus for generating closed-loop periodic motion data from single open time-series motion data given for moving a multi-joint rigid body object.
According to a twentieth aspect of this invention, there is provided the apparatus of the nineteenth aspect wherein said apparatus further includes a motion connecting unit for (a) reading out plural time-series motion data stored said storage unit via said data bus, (b) connecting the plural time-series motion data to generate a series of time-series motion data, and (c) storing the series of time-series motion data in said storage unit via said data bus.
Therefore, it is possible to provide an apparatus for generating closed-loop periodic motion data from time-series motion data resulting from connecting plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-first aspect of this invention, there is provided the apparatus of any of the or nineteenth, twentieth aspects wherein said open periodic motion generating unit (a) estimates motion data as much as a synthesis time from the last time of time-series motion data to generate estimated-extended motion data, (b) combines the time-series motion data from the initial time to the synthesis time after and the estimated-extended motion data to generate synthesized motion data, (c) replaces the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the initial time to the synthesis time after with those of the synthesized motion data, and (d) calculates the amount of parallel translation for the position data of the whole multi-joint rigid body object, performs the parallel translation to the position data of the whole multi-joint rigid body object, and replaces the position data of the time-series motion data from the initial time to the synthesis time after with the resulting position data.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-second aspect of this invention, there is provided the apparatus of any of the nineteenth and twentieth aspects wherein said open periodic motion generating unit (a) estimates motion data as much as a synthesis time in the past direction from the initial time of time-series motion data, in terms of time, to generate estimated-extended motion data, (b) combines the time-series motion data from the last time to the synthesis time before and the estimated-extended motion data to generate synthesized motion data, (c) replaces the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the last time to the synthesis time before with those of the synthesized motion data, and (d) calculates the amount of parallel translation for the position data of the whole multi-joint rigid body object, performs the parallel translation to the position data of the whole multi-joint rigid body object, and replaces the position data of the time-series motion data from the last time to the synthesis time before with the resulting position data.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-third aspect of this invention, there is provided the apparatus of any of the nineteenth and twentieth aspects wherein said open periodic motion generating unit (a) estimates motion data as much as xcex1xc3x97(a synthesis time) from the last time of time-series motion data, xcex1 being a synthesis time distribution rate (0xe2x89xa6xcex1xe2x89xa61), to generate estimated backward-extended motion data, (b) estimates motion data as much as (1xe2x88x92xcex1)xc3x97(the synthesis time) in the past direction from the initial time of time-series motion data, in terms of time, to generate estimated forward-extended motion data, (c) combines the time-series motion data from the initial time to xcex1xc3x97(the synthesis time) after and the estimated backward-extended motion data to generate front synthesized motion data, (d) combines the time-series motion data from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before and the estimated forward-extended motion data to generate back synthesized motion data, (e) replaces the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the last time to xcex1xc3x97(the synthesis time) after with those of the front synthesized motion data, (f) calculates the amount of parallel translation for the position data of the whole multi-joint rigid body object from the last time to xcex1xc3x97(the synthesis time) after, performs the parallel translation to the position data of the whole multi-joint rigid body object from the last time to xcex1xc3x97(the synthesis time) after, and replaces the position data of the time-series motion data from the last time to xcex1xc3x97(the synthesis time) after with the resulting position data, (g) replaces the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before with those of the back synthesized motion data, and (h) calculates the amount of parallel translation for the position data of the whole multi-joint rigid body object from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before, performs the parallel translation to the position data of the whole multi-joint rigid body object from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before, and replaces the position data of the time-series motion data from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before with the resulting position data.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-fourth aspect of this invention, there is provided the apparatus of any of the nineteenth and twentieth aspects wherein said closed-loop motion generating unit performs parallel translation, using a monotonically increasing function, to the position data of the whole multi-joint rigid body object from the last time to an effect time before, among the time-series motion data, in a way to match the position data of the whole multi-joint rigid body object at the last time to that at the initial time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to the twenty-fifth aspect of this invention, there is provided the apparatus of any of the nineteenth and twentieth aspects wherein said closed-loop motion generating unit performs parallel translation to the position data of the whole multi-joint rigid body object from the last time to an effect time before, among the time-series motion data, by applying to the position data of the whole multi-joint rigid body object at a time t within the effect time, an amount of parallel translation obtained by multiplying the difference resulting from subtracting the position data of the whole multi-joint rigid body object at the initial time from that at the last time, with the difference between t and the initial time of the effect time, divided by the effect time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-sixth aspect of this invention, there is provided the apparatus of any of the nineteenth and twentieth aspects wherein said closed-loop motion generating unit performs parallel translation to the position data of the whole multi-joint rigid body object from the last time to an effect time before, among the time-series motion data, by applying to the position data of the whole multi-joint rigid body object at a time t within the effect time, an amount of parallel translation obtained by multiplying the difference resulting from subtracting the position data of the whole multi-joint rigid body object at the initial time from that at the last time, with the difference between t and the initial time of the effect time, divided by the effect time, and raising the result to the power of xcex2 (1xe2x89xa6xcex2).
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-seventh aspect of this invention, there is provided the apparatus of any of the twenty-first, twenty-second, and twenty-third aspects wherein said open periodic motion generating unit uses a function that (a) is 1 at the initial time of the synthesis time, and 0 at the last time of the synthesis time, (b) decreases monotonically, (c) is differentiable, and (d) is rotationally symmetrical by 180 degrees about the middle time of the synthesis time, within the synthesis time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-eighth aspect of this invention, there is provided the apparatus of any of the twenty-first, twenty-second, and twenty-third aspects wherein said open periodic motion generating unit uses a function that (a) is 0 at the initial time of the synthesis time, and 1 at the last time of the synthesis time, (b) increases monotonically, (c) is differentiable, and (d) is rotationally symmetrical by 180 degrees about the middle time of the synthesis time, within the synthesis time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a twenty-ninth aspect of this invention, there is provided the apparatus of any of the nineteenth and twentieth aspects wherein said input/output unit receives time-series motion data compressed in advance, and said apparatus further includes a decompression unit for decompressing the compressed time-series motion data, and storing the decompressed time-series motion data in said storage unit.
Therefore, it is possible to provide an apparatus for generating closed-loop periodic motion data from single or plural open time-series motion data given for moving a multi-joint rigid body object, compressed in advance, transmitted via a communications network, such as the Internet.
According to a thirtieth aspect of this invention, there is provided a method of generating motion data, comprising:
storing plural time-series motion data; and
connecting motions by reading out plural time-series motion data from said storage unit, connecting the plural time-series motion data to generate a series of time-series motion data, and storing the series of time-series motion data in said storage unit.
Therefore, it is possible to provide a method for generating motion data, able to connect plural time-series motion data and generate new time-series motion data.
According to a thirty-first aspect of this invention, there is provided a method of generating motion data, comprising:
storing two time-series motion data to be connected, the two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively; and
connecting motions by estimating motion data in future or past as much as a connection time, in terms of time, for either the front time-series motion data or the back time-series motion data, to generate estimated-extended motion data, and synthesizing connecting motion data based on the estimated-extended motion data and motion data in future or past as much as the connection time, in terms of time, for either the front time-series motion data or the back time-series motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-second aspect of this invention, there is provided the method of the thirty-first aspect wherein said connecting motions, two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively, includes estimating motion data as much as a connection time from the last time of the front time-series motion data to generate estimated-extended motion data, and generating connecting motion data based on the back time-series motion data from the initial time to the connection time after and the estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-third aspect of this invention, there is provided the method of the thirty-first aspect wherein said connecting motions, two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively, includes estimating motion data as much as a connection time in the past direction from the initial time of the back time-series motion data, in terms of time, to generate estimated-extended motion data, and generating connecting motion data based on the front time-series motion data from the last time to the connection time before and the estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-fourth aspect of this invention, there is provided the method of the thirty-first aspect wherein said connecting motions includes, according to a connection time distribution rate xcex3, (a) estimating motion data as much as xcex3xc3x97(a connection time) from the last time of the front time-series motion data to generate estimated backward-extended motion data, (b) estimating motion data in the past direction as much as (1xe2x88x92xcex3)xc3x97(the connection time) from the initial time of the back time-series motion data, in terms of time, to generate estimated forward-extended motion data, (c) generating a first half of connecting motion data based on the front time-series motion data from the last time to (1xe2x88x92xcex3)xc3x97(the connection time) before and the estimated forward-extended motion data, and (d) generating a second half of connecting motion data based on the back time-series motion data from the initial time to xcex3xc3x97(the connection time) after and the estimated backward-extended motion data.
Therefore it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-fifth aspect of this invention, there is provided a method of any of the thirty-second, thirty-third, thirty-fourth aspects wherein said connecting motions uses a function that (a) is 0 at the initial time of the connection time, and 1 at the last time of the connection time, (b) increases monotonically, (c) is differentiable, and (d) is rotationally symmetrical by 180 degrees about the middle time of the connection time, within the connection time.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-sixth aspect of this invention, there is provided the method of any of the thirty-second, thirty-third, and thirty-fourth aspects wherein said connecting motions uses a function that (a) is 1 at the initial time of the connection time, and 0 at the last time of the connection time, (b) decreases monotonically, (c) is differentiable, and (d) is rotationally symmetrical by 180 degrees about the middle time of the connection time, within the connection time.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-seventh aspect of this invention, there is provided the method of the thirty-second aspect wherein said connecting motions includes estimating that the front time-series motion data at the last time continues as much as a connection time from the last time, and generating estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-eighth aspect of this invention, there is provided the method of the thirty-third aspect wherein said connecting motions includes estimating that the back time-series motion data at the initial time has continued as much as a connection time in the past direction from the initial time, in terms of time, and generating estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a thirty-ninth aspect of this invention, there is provided the method of the thirty-second aspect wherein said connecting motions includes estimating that motion data smoothly shifts to the front time-series motion data at the last time a connection time after the last time, and generating estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a fortieth aspect of this invention, there is provided the method of the thirty-third wherein said connecting motions includes estimating that the motion state of the back time-series motion data a connection time before the initial time of the back time-series motion data smoothly shifts to the back time-series motion data with the motion state of the back time-series motion data at the initial time, and generating estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-first aspect of this invention, there is provided the method of the thirty-second aspect wherein said connecting motions includes estimating that the motion state of the front time-series motion data a connection time after the last time of the front time-series motion data is the motion state of the back time-series motion data the connection time after the initial time of the back time-series motion data, and generating estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-second aspect of this invention, there is provided the method of the thirty-third aspect wherein said connecting motions includes estimating that the motion state of the back time-series motion data a connection time before the initial time of the back time-series motion data smoothly shifts to the motion state of the front time-series motion data the connection time before the last time of the front time-series motion data, and generating estimated-extended motion data.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-third aspect of this invention, there is provided the method of the thirty-fourth aspect wherein said connecting motions includes calculating a connection time distribution rate in connection, for time-series motion data holding a connection time distribution rate as additional information, based on a connection time distribution rate as additional information for the front time-series motion data and a connection time distribution rate as additional information for the back time-series motion data, and generating an estimated forward-extended motion and an estimated backward-extended motion according to the connection time distribution rate.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-fourth aspect of this invention, there is provided the method of the thirty-fourth aspect wherein said connecting motions includes calculating a connection time distribution rate xcex3 in connection, for time-series motion data holding a connection time distribution rate as additional information, based on a connection time distribution rate xcex31 as additional information for the front time-series motion data and a connection time distribution rate xcex32 as additional information for the back time-series motion data, by xcex3=(xcex31+xcex32)/2, and generating an estimated forward-extended motion and an estimated backward-extended motion according to the connection time distribution rate.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-fifth aspect of this invention, there is provided the method of any of the thirty-second, thirty-third, and thirty-fourth aspects wherein for time-series motion data holding additional information about numerically expressed methods of generating estimated-extended motions, said connecting motions includes generating an estimated-extended motion, an estimated backward-extended motion, and an estimated forward-extended motion, according to the additional information.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-sixth aspect of this invention, there is provided the method of the thirty-fourth aspect wherein said connecting motions includes, for time-series motion data holding a value numerically expressing the importance of the time-series motion data as additional information, based on the value of the importance of the additional information for the front time-series motion data and the value of the importance of the additional information for the back time-series motion data, determining a method of generating an estimated backward-extended motion and an estimated forward-extended motion, calculating a connection time distribution rate, and generating an estimated forward-extended motion and an estimated backward-extended motion.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-seventh aspect of this invention, there is provided the method of the thirty-fourth aspect wherein said connecting motions includes, for time-series motion data holding a value numerically expressing the importance of the time-series motion data as additional information, based on the value xcex41 of the importance of the additional information for the front time-series motion data and the value xcex42 of the importance of the additional information for the back time-series motion data (0xe2x89xa6xcex41, xcex42xe2x89xa61), determining a method of generating an estimated backward-extended motion and an estimated forward-extended motion, calculating a connection time distribution rate xcex3 by xcex3=(xcex41xe2x88x92xcex42+1)/2, and generating an estimated forward-extended motion and an estimated backward-extended motion.
Therefore, it is possible to provide a method for generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a forty-eighth aspect of this invention, there is provided a method of generating closed-loop periodic motion data, comprising:
administrating inputs and outputs by (a) receiving time-series motion data including the position data of a whole multi-joint rigid body object at each time, and the posture angle data, joint slide vector data, and the joint angle data of the multi-joint rigid body object at each time, (b) storing the received time-series motion data in a storage unit, and (c) reading out closed-loop periodic motion data generated from the time-series motion data, stored in said storage unit;
generating an open periodic motion by (a) reading out time-series motion data stored in said storage unit, (b) generating open periodic time-series motion data by making the local parts of a multi-joint rigid body object periodic, and (c) storing the open periodic time-series motion data in said storage unit; and
generating a closed-loop motion generating by (a) reading out the position data of the whole multi-joint rigid body object among the open periodic time-series motion data, (b) generating closed-loop motion data by making the position data of the whole multi-joint rigid body object closed-loop, i.e., the movement of the whole multi-joint rigid body object being made closed-loop, (c) replacing the open periodic time-series motion data stored in said storage unit with the closed-loop motion data, and (d) storing the closed-loop motion data in said storage unit.
Therefore, it is possible to provide a method for generating closed-loop periodic motion data from single open time-series motion data given for moving a multi-joint rigid body object.
According to a forty-ninth aspect of this invention, there is provided the method of the forth-eighth aspect wherein said method further includes connecting motions by (a) reading out plural time-series motion data stored said storage unit via said data bus, (b) connecting the plural time-series motion data to generate a series of time-series motion data, and (c) storing the series of time-series motion data in said storage unit via said data bus.
Therefore, it is possible to provide a method for generating closed-loop periodic motion data from time-series motion data resulting from connecting plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fiftieth aspect of this invention, there is provided the method of any of the forty-eighth and forty-ninth aspects wherein said generating an open periodic motion includes (a) estimating motion data as much as a synthesis time from the last time of time-series motion data to generate estimated-extended motion data, (b) combining the time-series motion data from the initial time to the synthesis time after and the estimated-extended motion data to generate synthesized motion data, (c) replacing the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the initial time to the synthesis time after with those of the synthesized motion data, and (d) calculating the amount of parallel translation for the position data of the whole multi-joint rigid body object, performing the parallel translation to the position data of the whole multi-joint rigid body object, and replacing the position data of the time-series motion data from the initial time to the synthesis time after with the resulting position data.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-first aspect of this invention, there is provided the method of any of the forty-eighth and forty-ninth aspects wherein said generating an open periodic motion includes (a) estimating motion data as much as a synthesis time in the past direction from the initial time of time-series motion data, in terms of time, to generate estimated-extended motion data, (b) combining the time-series motion data from the last time to the synthesis time before and the estimated-extended motion data to generate synthesized motion data, (c) replacing the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the last time to the synthesis time before with those of the synthesized motion data, and (d) calculating the amount of parallel translation for the position data of the whole multi-joint rigid body object, performing the parallel translation to the position data of the whole multi-joint rigid body object, and replacing the position data of the time-series motion data from the last time to the synthesis time before with the resulting position data.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-second aspect of this invention, there is provided the method of any of the forty-eighth and forty-ninth aspects wherein said generating open periodic motion includes (a) estimating motion data as much as xcex1xc3x97(a synthesis time) from the last time of time-series motion data, xcex1 being a synthesis time distribution rate (0xe2x89xa6xcex1xe2x89xa61), to generate estimated backward-extended motion data, (b) estimating motion data as much as (1xe2x88x92xcex1)xc3x97(the synthesis time) in the past direction from the initial time of time-series motion data, in terms of time, to generate estimated forward-extended motion data, (c) combining the time-series motion data from the initial time to xcex1xc3x97(the synthesis time) after and the estimated backward-extended motion data to generate front synthesized motion data, (d) combining the time-series motion data from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before and the estimated forward-extended motion data to generate back synthesized motion data, (e) replacing the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the last time to xcex1xc3x97(the synthesis time) after with those of the front synthesized motion data, (f) calculating the amount of parallel translation for the position data of the whole multi-joint rigid body object from the last time to xcex1xc3x97(the synthesis time) after, performing the parallel translation to the position data of the whole multi-joint rigid body object from the last time to xcex1xc3x97(the synthesis time) after, and replacing the position data of the time-series motion data from the last time to xcex1xc3x97(the synthesis time) after with the resulting position data, (g) replacing the posture angle data, joint slide vector data, and joint angle data of the time-series motion data from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before with those of the back synthesized motion data, and (h) calculating the amount of parallel translation for the position data of the whole multi-joint rigid body object from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before, performing the parallel translation to the position data of the whole multi-joint rigid body object from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before, and replacing the position data of the time-series motion data from the last time to (1xe2x88x92xcex1)xc3x97(the synthesis time) before with the resulting position data.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-third aspect of this invention, there is provided the method of any of the forty-eighth and forty-ninth aspects wherein in said generating a closed-loop motion, parallel translation is performed, using a monotonically increasing function, to the position data of the whole multi-joint rigid body object from the last time to an effect time before, among the time-series motion data, in a way to match the position data of the whole multi-joint rigid body object at the last time to that at the initial time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-fourth aspect of this invention, there is provided the method of any of the forty-eighth and forty-ninth aspects wherein in said generating a closed-loop motion, parallel translation is performed to the position data of the whole multi-joint rigid body object from the last time to an effect time before, among the time-series motion data, by applying to the position data of the whole multi-joint rigid body object at a time t within the effect time, an amount of parallel translation obtained by multiplying the difference resulting from subtracting the position data of the whole multi-joint rigid body object at the initial time from that at the last time, with the difference between t and the initial time of the effect time, divided by the effect time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-fifth aspect of this invention, there is provided the method of any of the forty-eighth and forty-ninth aspects wherein in said generating a closed-loop motion, parallel translation is performed to the position data of the whole multi-joint rigid body object from the last time to an effect time before, among the time-series motion data, by applying to the position data of the whole multi-joint rigid body object at a time t within the effect time, an amount of parallel translation obtained by multiplying the difference resulting from subtracting the position data of the whole multi-joint rigid body object at the initial time from that at the last time, with the difference between t and the initial time of the effect time, divided by the effect time, and raising the result to the power of xcex2 (1xe2x89xa6xcex2).
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-sixth aspect of this invention, there is provided the method of any of the fiftieth, fifty-first, and fifty-second aspects wherein in said generating an open periodic motion, used is a function that (a) is 1 at the initial time of the synthesis time, and 0 at the last time of the synthesis time, (b) decreases monotonically, (c) is differentiable, and (d) is rotationally symmetrical about the middle time of the synthesis time, within the synthesis time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-seventh aspect of this invention, there is provided the method of any of the fiftieth, fifty-first, and fifty-second aspects wherein in said generating an open periodic motion, used is a function that (a) is 0 at the initial time of the synthesis time, and 1 at the last time of the synthesis time, (b) increases monotonically, (c) is differentiable, and (d) is rotationally symmetrical about the middle time of the synthesis time, within the synthesis time.
Therefore, it is possible to provide a method for generating motion data, the method generating an open periodic motion from non-periodic motions, when closed-loop periodic motion data is generated from time-series motion data resulting from connecting single or plural open time-series motion data given for moving a multi-joint rigid body object.
According to a fifty-eighth aspect of this invention, there is provided the method of any of the fifty-seventh and fifty-eighth aspects wherein said administrating inputs and outputs includes receiving time-series motion data compressed in advance, and said method further includes decompressing the compressed time-series motion data, and storing the decompressed time-series motion data in said storage unit.
Therefore, it is possible to provide a method for generating closed-loop periodic motion data from single or plural open time-series motion data given for moving a multi-joint rigid body object, compressed in advance, transmitted via a communications network, such as the Internet.
According to a fifty-ninth aspect of this invention, there is provided a storage medium of storing a program of generating motion data, said program comprising:
storing plural time-series motion data; and
connecting motions by reading out plural time-series motion data from said storage unit, connecting the plural time-series motion data to generate a series of time-series motion data, and storing the series of time-series motion data in said storage unit.
Therefore, it is possible to provide a storage medium for storing a program generating motion data, able to connect plural time-series motion data and generate new time-series motion data.
According to a sixtieth aspect of this invention, there is provided a storage medium of storing a program of generating motion data, said program comprising:
storing two time-series motion data to be connected, the two time-series motion data being referred to as front time-series motion data and back time-series motion data, respectively; and
connecting motions by estimating motion data in future or past as much as a connection time, in terms of time, for either the front time-series motion data or the back time-series motion data, to generate estimated-extended motion data, and synthesizing connecting motion data based on the estimated-extended motion data and motion data in future or past as much as the connection time, in terms of time, for either the front time-series motion data or the back time-series motion data.
Therefore, it is possible to provide a storage medium for storing a program generating motion data, able to connect two time-series motion data and generate new time-series motion data of which the time length is equal to the sum of those of the two time-series motion data.
According to a sixty-first aspect of this invention, there is provided a storage medium of storing a program of generating closed-loop periodic motion data, said program comprising:
administrating inputs and outputs by (a) receiving time-series motion data including the position data of a whole multi-joint rigid body object at each time, and the posture angle data, joint slide vector data, and the joint angle data of the multi-joint rigid body object at each time, (b) storing the received time-series motion data in a storage unit via a data bus, and (c) reading out closed-loop periodic motion data generated from the time-series motion data, stored in said storage unit via said data bus;
generating an open periodic motion by (a) reading out time-series motion data stored in said storage unit via said data bus, (b) generating open periodic time-series motion data by making the local parts of a multi-joint rigid body object periodic, and (c) storing the open periodic time-series motion data in said storage unit via said data bus; and
generating a closed-loop motion generating by (a) reading out the position data of the whole multi-joint rigid body object among the open periodic time-series motion data, (b) generating closed-loop motion data by making the position data of the whole multi-joint rigid body object closed-loop, i.e., the movement of the whole multi-joint rigid body object being made closed-loop, (c) replacing the open periodic time-series motion data stored in said storage unit with the closed-loop motion data, and (d) storing the closed-loop motion data in said storage unit.
Therefore, it is possible to provide a storage medium for storing a program generating a closed-loop periodic motion data from single open time-series motion data given for moving a multi-joint rigid body object.
According to a sixty-second aspect of this invention, there is provided the storage medium of the sixty-first aspect wherein said program further includes connecting motions by (a) reading out plural time-series motion data stored said storage unit via said data bus, (b) connecting the plural time-series motion data to generate a series of time-series motion data, and (c) storing the series of time-series motion data in said storage unit via said data bus.
Therefore, it is possible to provide a storage medium for storing a program generating closed-loop periodic motion data from time-series motion data resulting from connecting plural open time-series motion data given for moving a multi-joint rigid body object.